1-1 Spring MVC 特質
1-2 Spring MVC 與傳統 MVC 架構差異
Web 應用程式的 Model 2 架構 : GUI MVC Design Pattern 的變形
Web 應用程式的 Model 2 架構圖 :
Controller 負責處理 user 請求
▼ 根據商業邏輯找到, 需要的 Model
Model 跟資料庫存取相關的資料
▼ 找到資料後, 告訴 Controller 呼叫適當的 View
View 接收 Controller 和 Model 的資訊產生所需的畫面
優點 : 處理 HTTP Request 的程式依功能分3部分(MVC),撰寫其中任一部份時不需考慮其他 部分要怎麼配合。
缺點 : 將 Web 元件依照 Model、View、Controller 的不同功能分開, 通常容易放錯位置。
訪間有各種不同的 Framework 能幫助我們避免這些錯誤
這邊要介紹的是 Spring Web MVC Fromework
1-3 Spring Web MVC 的主要組成元件 :
Dispatcher Servlet : 負責 HTTP Request 並導向對應的 Controller 元件。
<所有的請求都要經過它>
Hander Mapping : 紀錄 HTTP Request 與 Controller 元件之間的對應關係。<幫助 HTTP Request 找到對應的 Controller 元件>
Controller : 處理 HTTP Request 和 HTTP Response 元件。<可像 HTTP Servlet 一樣取得, HttpServletRequest 與 HttpServletResponse 物件使用>
Model And View : 提供 Model 與 View 元件相關資料讓 Dispatcher Servlet 使用。<2者之間傳遞資料, Model 抓到資料後 傳到指定的 View 顯示>
View Resolver : 紀錄 View 元件邏輯名稱與 View 元件實際 URL 之間對應關係。<讓 Controller 元件使用邏輯名稱呼叫 View>
View : 負責顯示 Request 後的畫面, Spring Web MVC 支援 JSP、JSTL、XSLT、PDF等格式。